extends 基础状态
@export var 玩家:玩家节点




func 进入状态() -> void:
	super.进入状态()
	QuanJuDebug.武器状态机更改.emit(self.name)
	var 库存弹药 = 武器_状态机.玩家弹药属性.get(str(武器_状态机.当前武器.武器类型)+"弹药")
	var 弹药消耗量 = 武器_状态机.当前武器.武器弹容量 - 武器_状态机.当前武器.当前武器弹容量
	if 库存弹药 != 0 :
		武器_状态机.武器动画播放器.play("换弹",-1,武器_状态机.玩家属性节点.换弹速度加成)
		if 库存弹药 > 弹药消耗量 :
			武器_状态机.当前武器.当前武器弹容量 = 武器_状态机.当前武器.武器弹容量
			武器_状态机.玩家弹药属性.set(str(武器_状态机.当前武器.武器类型)+"弹药",(库存弹药-弹药消耗量))
			武器_状态机.弹药更新信号.emit(武器_状态机.当前武器.当前武器弹容量,(库存弹药-弹药消耗量))
		else :
			武器_状态机.当前武器.当前武器弹容量 += 库存弹药
			武器_状态机.玩家弹药属性.set(str(武器_状态机.当前武器.武器类型)+"弹药",(库存弹药-库存弹药))
			武器_状态机.弹药更新信号.emit(武器_状态机.当前武器.当前武器弹容量,(库存弹药-库存弹药))
			
	pass


func 退出状态() -> void:
	super.退出状态()
	pass


func 渲染帧更新触发(_delta: float) -> void:
	super.渲染帧更新触发(_delta)

	pass


func 物理帧更新触发(_delta: float) -> void:
	super.物理帧更新触发(_delta)
	
	pass
